<?php

//Lớp dùng chung cho xử lý kết nối CSDL và thực thi câu truy vấn
include_once("cons.php");
class database {
//khai báo biến 
	var $_sql = '';
	var $_connection = '';
	var $_cursor = null;
	
//hàm khởi tạo kết nối CSDL
	function database() 
	{
		$this->_connection = @mysql_connect($generalHost, $generalUser, $generalPass);
		
		if (!$this->_connection ) 
		{
			die("Không thể kết nối MySQL");
		}
		
		$db=$generalDatabaseName;
		
		if ($db != '' && !mysql_select_db( $db, $this->_connection )) 
		{
			die ("Không thể mở CSDL $db: ".mysql_error());
		}
	}

//Hàm trả về giá trị chuỗi câu truy vấn
	function setQuery( $sql) 
	{
		$this->_sql = $sql;
	}

//Hàm gọi thực thi câu truy vấn
	function query() 
	{	
		mysql_query("set names 'utf8'");
		$this->_cursor = mysql_query( $this->_sql, $this->_connection );
		return $this->_cursor;
	}


//
	function loadRow() {
		if (!($cur = $this->query())) 
		{
			return null;
		}
		
		$ret = null;
		
		if ($row = mysql_fetch_row( $cur )) 
		{
			$ret = $row[0];
		}
		
		mysql_free_result( $cur );
		
		return $ret;
	}
	
	
//
	function loadArrayField($numinarray = 0) {
		if (!($cur = $this->query())) {
			return null;
		}
		$array = array();
		while ($row = mysql_fetch_row( $cur )) {
			$array[] = $row[$numinarray];
		}
		mysql_free_result( $cur );
		return $array;
	}
	
	
//Hàm load tất cả danh sách và trả về một mảng
	function loadAllRow() {
		if (!($cur = $this->query())) {
			return null;
		}
		$array = array();
		while ($row = mysql_fetch_assoc( $cur )) 
		{
			// ketqua = mang ket qua
			$array[] = $row;
		}
		mysql_free_result( $cur );
		return $array;
	}

        function AllRow() {
		if (!($cur = $this->query())) {
			return null;
		}
		$array = array();
		while ($row = mysql_fetch_row( $cur )) {
			// ketqua = mang ket qua
			$array[] = $row;
		}
		mysql_free_result( $cur );
		return $array;
	}
	
	
//Hàm đóng kết nối CSDL
	function disconnect() 
	{
		mysql_close( $this->_connection );
	}
	 
	
//Hàm đếm tổng số dòng trả về từ câu truy vấn
	function countRows()
	{
		return mysql_num_rows($this->query());
	}
		
}
?>